#include <iostream>
#include <math.h>
#include "../include/vecteur.h"

#define EPSILON 0.00000001

using namespace std;

//**************CONSTRUCTEUR**********
vecteur::vecteur(double _x,double _y):x(_x),y(_y){

}
//*****************DESTRUCTEUR**********
vecteur::~vecteur(){
}

//****************CONSTRUCTEUR COPIE**********
vecteur::vecteur(const vecteur & original){
	x=original.x;
	y=original.y;
}
//**************SURCHARGE = ***********
vecteur& vecteur::operator=(const vecteur& vect){
	x=vect.x;
	y=vect.y;
	return *this;
}

//**************SURCHARGE * ***********
vecteur operator*(const vecteur& vect, const double& _x){
	vecteur vect2;
	vect2=vect;

	vect2.x *= _x;
	vect2.y *= _x;

	return vect2;
}

//***********NORME*********
double vecteur::norme(){
	return sqrt(x*x+y*y+EPSILON);
	
}

//**********NORMALISE*******	
void vecteur::normalise(){
	double norme=this->norme();
	x/= norme;
	y/= norme;
}

double vecteur::pScalaire(const vecteur& v){
	return this->x * v.x + this->y*v.y;
}
